#ifndef __GlDxAudioManager_h__
#define __GlDxAudioManager_h__

#include <DSound.h>
#include <map>
#include <string>
#include "GlAudioManager.h"
#include "GlMain.h"

namespace AudioLibrary
{
	class GlExport DxAudioManager
		: public AudioManager
	{
		public:
			DxAudioManager(HWND hwnd);
			virtual ~DxAudioManager();
			virtual void playSound(const char *fileName);
		private:
			typedef std::map<std::string, IDirectSoundBuffer8*>	NameBufferMap;
			IDirectSound8*	mDriver;
			NameBufferMap	mBuffers;

			IDirectSoundBuffer8* getBuffer(const char *fileName);
	};
}

#endif // __GlDxAudioManager_h__
